//package com.shujia.scala
//
//import scala.actors.Actor
//
//object Demo21Actor {
//  def main(args: Array[String]): Unit = {
//
//    val actor = new MyActor
//
//    actor.start()
//
//    /**
//      * 函数消息  异步消息   不需要返回结果
//      */
//
//    actor ! "消息"
//    actor.!("消息")
//    actor ! 12
//
//    val str = "23"
//
//    val i = str toInt
//
//
//    /**
//      * 同步消息  需要返回结果  等待返回
//      *
//      * 返回值是一个函数，需要调用得到结果
//      */
//
//    val reFun = actor !! Mes("同步消息", 1)
//
//    //获取返回的结果
//    val r = reFun()
//
//    println("消息发送接受成功")
//
//    println(r)
//
//
//    println("main函数")
//  }
//}
//
//case class Mes(mes: String, code: Int)
//
//
//class MyActor extends Actor {
//  /**
//    * act 方法 相当于run方法
//    */
//  override def act(): Unit = {
//
//    println("scala多线程实现")
//
//    //一直接收消息
//    while (true) {
//
//      //接受消息
//      receive {
//        //处理消息
//        case s: String => println("String类型的消息：" + s)
//        case i: Int => println("int类型的消息：" + i)
//
//        //接受同步消息
//        case mes: Mes => {
//          println("消息接受成功" + mes)
//
//          //回复消息
//          sender ! "消息接受成功"
//        }
//      }
//    }
//
//
//  }
//}
